<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div>
        我是div
        <span>我是span标签</span>
        <p>我是p标签</p>
        <a href="JavaScript:;" id="a1" class="a2" name="我是a标签">我是a标签</a>
        <h1>我是h1标签</h1>
        <!-- 我是注释内容 -->
    </div>

    <script>
        var oDiv = document.querySelector('div');
        var oA = document.querySelector('a');

        // 获取 标签对象中的所有节点
        var res1 = oDiv.childNodes;
        console.log( res1 );

        // 获取 标签对象中的所有标签节点
        var res2 = oDiv.children;
        console.log(res2);

        // 获取 标签对象中的第一个节点
        var res3 = oDiv.firstChild;
        console.log(res3);

        // 获取 标签对象中的最后一个节点
        var res4 = oDiv.lastChild;
        console.log(res4);


        // 获取 标签对象中的第一个标签节点
        var res5 = oDiv.firstElementChild;
        console.log(res5);

        // 获取 标签对象中的最后一个标签节点
        var res6 = oDiv.lastElementChild;
        console.log(res6);

        // 获取 标签对象上一个兄弟节点
        var res7 = oA.previousSibling;
        console.log(res7);

        // 获取 标签对象下一个兄弟节点
        var res8 = oA.nextSibling;
        console.log(res8);


        // 获取 标签对象上一个兄弟标签节点
        var res9 = oA.previousElementSibling;
        console.log(res9);

        // 获取 标签对象下一个兄弟标签节点
        var res10 = oA.nextElementSibling;
        console.log(res10);


        // 获取 标签对象的父级节点
        var res11 = oA.parentNode;
        console.log( res11 );

        // 获取 标签对象的属性节点
        var res12 = oA.attributes;
        console.log(res12);


    </script>

    <script>
        /*
            获取节点的方式
                标签对象.childNodes
                    获取标签对象中的所有节点
        */
    </script>
</body>
</html>